This step-by-step C++ tutorial will guide you to build a complete application that analyzes a 1D barcode from an image and output the value and type the terminal.
C++ |
Copy Code
|
---|---|
#include "MyForm.h" using namespace System; using namespace System::Windows::Forms; [STAThread] void main(array<String^>^ args) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); BXTutorial::MyForm form; Application::Run(%form); } |
C++ |
Copy Code
|
---|---|
private: System::Void mnuOpen_Click(System::Object^ sender, System::EventArgs^ e) { if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK) { axImagXpress1->FileName = openFileDialog1->FileName; } } |
C++ |
Copy Code
|
---|---|
private: System::Void mnuExit_Click(System::Object^ sender, System::EventArgs^ e) {
Application::Exit();
}
|
C++ |
Copy Code
|
---|---|
private: System::Void btnReadBarcode_Click(System::Object^ sender, System::EventArgs^ e) { // Set barcode type to BC_StyleUnknown value - Barcode Xpress engine will search for all 1D barcodes. axBarcodeXpress1->SetBarcodeReaderType(BC_StyleUnknown); // Set the read region of interest to all zero // so the entire images is searched. axBarcodeXpress1->ReaderAreaHeight = 0; axBarcodeXpress1->ReaderAreaWidth = 0; axBarcodeXpress1->ReaderAreaX = 0; axBarcodeXpress1->ReaderAreaY = 0; if (axImagXpress1->hDIB == 0) { MessageBox::Show("Error: You must select an image!"); return; } axBarcodeXpress1->AnalyzehDib(axImagXpress1->hDIB); int numBC = axBarcodeXpress1->NumBarcodes; String^ bcName; String^ bcResult; String^ result; for (int i = 0; i < numBC; i++) { axBarcodeXpress1->GetBarcode(i); bcName = axBarcodeXpress1->BarcodeCodeName; bcResult = axBarcodeXpress1->BarcodeResult; result += "#" + i.ToString() + " Type: " + bcName + " Value: " + bcResult + "\n"; } MessageBox::Show(result); } |
C++ |
Copy Code
|
---|---|
MyForm(void) { InitializeComponent(); // The SetSolutionName, SetSolutionKey and possibly the SetOEMLicenseKey method must be called to distribute the runtime. Note that the SolutionName, SolutionKey and OEMLicenseKey values shown below are only examples. //axBarcodeXpress1->SetSolutionName("YourSolutionName"); //axBarcodeXpress1->SetSolutionKey(12345, 12345, 12345, 12345); //axBarcodeXpress1->SetOEMLicenseKey("1.0.AStringForOEMLicensingContactAccusoftSalesForMoreInformation..."); //axImagXpress1->SetSolutionName("YourSolutionName"); //axImagXpress1->SetSolutionKey(12345, 12345, 12345, 12345); //axImagXpress1->SetOEMLicenseKey("1.0.AStringForOEMLicensingContactAccusoftSalesForMoreInformation..."); } |